.pachyderm-mount-react-wrapper {
  border-bottom: 1px solid var(--jp-border-color2);
  font-size: var(--jp-ui-font-size1);
  min-width: 18.75rem;
  min-height: 3.125rem;
}

.pachyderm-mount-base {
  color: var(--jp-ui-font-color0);
  background-color: var(--jp-layout-color1);
}

.pachyderm-mount-base-title {
  padding: 0.25rem 0rem 0.25rem 0.75rem;
  font-weight: 800;
}

/* Adjust the font to match pachyderm-button-link, which we use for the
 * top-area "view" selections. This class is applied to the top title in the
 * Repo view, so that it doesn't clash with the buttons that are right next to
 * it.
 */
.pachyderm-mount-base-title-button-font {
  font-family: 'Montserrat', sans-serif;
}

.pachyderm-mount-icon-padding {
  padding-top: 3px;
}

.pachyderm-mount-config-container {
  display: flex;
  justify-content: space-between;
  padding-right: 0.75rem;
}

#pachyderm-mount {
  .lm-TabBar-tabIcon {
    width: 0;
  }
  .lm-TabBar-tabLabel {
    text-align: center;
  }
  .pachyderm-config-tab {
    max-width: 32px;
  }
}

/* === Config === */

.pachyderm-mount-config-wrapper {
  font-size: var(--jp-ui-font-size1);
  min-width: 18.75rem;
  color: var(--jp-ui-font-color0);
  background-color: var(--jp-layout-color1);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.pachyderm-mount-config-back {
  display: flex;
  justify-content: flex-end;
}

.pachyderm-mount-config-form-base {
  color: var(--jp-ui-font-color0);
  background-color: var(--jp-layout-color1);
  display: flex;
  flex-direction: column;
  margin: 0.25rem 16px;
  flex-grow: 1;
}

.pachyderm-mount-config-heading {
  margin-top: 64px;
  padding: 16px;
  font-weight: 500;
  font-size: large;
  display: flex;
  flex-direction: column;
}

.pachyderm-mount-config-subheading {
  font-size: medium;
  font-weight: 300;
}

.pachyderm-mount-login-container {
  margin-top: 25px;
  width: 100%;
  display: flex;
  justify-content: center;
}

.pachyderm-mount-config-address-wrapper {
  width: 100%;
  height: 150px;
  display: flex;
  flex-direction: column;
}

.pachyderm-mount-config-address-label {
  font-weight: 500;
}

.pachyderm-mount-config-address {
  margin-bottom: 15px;
}

.pachyderm-mount-config-address-error {
  color: var(--jp-error-color0);
}

.pachyderm-mount-config-set-address {
  margin-top: 15px;
  margin-bottom: 15px;
}

.pachyderm-mount-config-graphic-base {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 264px;
  border-top: 3px solid #5ba3b1;
  background-color: #f0f6f8;
}

.pachyderm-mount-config-graphic-container {
  width: 230px;
}

.pachyderm-mount-config-advanced-settings-button {
  padding-top: 1rem;
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
}

.pachyderm-mount-config-advanced-settings {
  margin-top: 1rem;
  display: flex;
  flex-direction: column;
}

/* === Datum === */

.pachyderm-mount-datum-wrapper {
  font-size: var(--jp-ui-font-size1);
  min-height: 3.125rem;
  min-width: 18.75rem;
  color: var(--jp-ui-font-color0);
  background-color: var(--jp-layout-color1);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  border-bottom: 1px solid var(--jp-border-color2);
}

.pachyderm-mount-datum-base {
  color: var(--jp-ui-font-color0);
  background-color: var(--jp-layout-color1);
  display: flex;
  flex-direction: column;
  margin: 0.25rem 16px;
  height: 100%;
}

.pachyderm-mount-datum-subheading {
  font-size: medium;
  font-weight: 300;
  margin-bottom: 0.75rem;
}

.pachyderm-mount-datum-label {
  font-weight: 500;
}

.pachyderm-mount-datum-input-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.pachyderm-mount-datum-cycler {
  display: flex;
  justify-content: space-between;
}

.pachyderm-mount-datum-error {
  color: var(--jp-error-color0);
}

/* === Pipeline === */

.pachyderm-mount-pipeline-wrapper {
  font-size: var(--jp-ui-font-size1);
  min-height: 3.125rem;
  min-width: 18.75rem;
  color: var(--jp-ui-font-color0);
  background-color: var(--jp-layout-color1);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  border-bottom: 1px solid var(--jp-border-color2);
}

.pachyderm-mount-pipeline-base {
  color: var(--jp-ui-font-color0);
  background-color: var(--jp-layout-color1);
  display: flex;
  flex-direction: column;
  margin: 0.25rem 16px;
  height: 100%;
  overflow: auto;
}

.pachyderm-mount-pipeline-subheading {
  font-size: medium;
  font-weight: 300;
  margin-bottom: 0.75rem;
}

.pachyderm-pipeline-label {
  font-weight: 500;
}

textarea {
  height: 100%;
  min-height: 80%;
  max-width: 100%;
}

.pachyderm-pipeline-input-wrapper {
  width: 100%;
  height: 10%;
  padding: 0.5em 0;
  display: flex;
  flex-direction: column;
}

.pachyderm-pipeline-textarea-wrapper {
  width: 100%;
  min-height: 20%;
  padding: 0.5em 0;
  display: flex;
  flex-direction: column;
}

.pachyderm-pipeline-buttons {
  display: flex;
  justify-content: space-evenly;
}

.pachyderm-mount-pipeline-error {
  color: var(--jp-error-color0);
}

.pachyderm-mount-pipeline-splash {
  display: flex;
  height: 100%;
  text-align: center;
}

.pachyderm-mount-pipeline-splash span {
  font-size: x-large;
  font-weight: 500;
  margin: auto;
}

.pachyderm-pipeline-current-notebook-wrapper {
  display: flex;
  align-content: center;
  padding: 0.5em;
}

.pachyderm-pipeline-current-notebook-label {
  padding: 0.5em;
}

.pachyderm-pipeline-current-notebook-value {
  background-color: lightgrey;
  border-color: darkgrey;
  border-radius: 0.5em;
  border-style: solid;
  border-width: 0.25em;
  flex-grow: 2;
  padding: 0.25em;
  text-align: center;
}

.jp-DirListing-content[loading="true"] {
  opacity: 0.5;
  cursor: progress;
}

.jp-DirPagination {
  flex: 0 0 auto;
  display: flex;
}

.jp-DirPagination * {
  color: black;
  flex: 1;
  text-align: center;
  padding: 8px 0;
}

.jp-DirPagination a.active {
  background-color: var(--pachyderm-hover-plum);
  color: white;
}

.jp-DirPagination a:hover:not(.active) {
  background-color: var(--jp-layout-color0);
}

.pachyderm-pipeline-error {
  color: red;
}

.pachyderm-config-tab .p-TabBar-tabIcon svg {
  transform: translate(-1px, 3px)
}

.jp-FileBrowser-filterBox {
  padding-top: 1em;
  margin-top: 0;
}

.pachyderm-explore-widget > .p-SplitPanel-handle {
  /* Hides unnecessary split panel adjuster since height is static */
  display: none;
}

.pachyderm-explore-widget {
  /* Locks the top part of the explore SplitPanel to be exactly 9.3em even if adjusted by JS */
  min-height: 12.5em;
  max-height: 12.5em;
  height: 12.5em;

  /* Resets the z-index from JuypterLab to allow Dropdowns to appear over content */
  z-index: initial;

  /* Necessary for absolute positioning Dropdowns on a z-index above the explore widget */
  overflow: visible;
  position: relative;
}
